580b4689686878cd0fc5fa219031ffc95b9dc82a,hemesh/src/wblut/hemesh/HEC_UVParametric.java,HEC_UVParametric,createBase,#,111
Before Change
index++;
} // for iu
} // for iv
this.setVertices(vertices).setFaces(faces).setDuplicate(true);
return super.createBase();
}
return null;
After Change
final int lvsteps = vsteps + 1;
int N = lusteps * lvsteps;
final WB_Point[] vertices = new WB_Point[N];
final WB_Point[] uvws = new WB_Point[N];
int index = 0;
for (int iv = 0; iv < lvsteps; iv++) {
final double v = (double) (iv) / (double) (vsteps);
for (int iu = 0; iu < lusteps; iu++) {
final double u = (double) (iu) / (double) (usteps);
vertices[index] = evaluator.f(u, v);
vertices[index].scaleSelf(radius);
uvws[index] = new WB_Point(iu * 1.0 / lusteps, iv * 1.0
/ lusteps, 0);
index++;
} // for iu
} // for iv
N = usteps * vsteps;
final int[][] faces = new int[N][4];
index = 0;
for (int iv = 0; iv < vsteps; iv++) {
for (int iu = 0; iu < usteps; iu++) {
faces[index][0] = (iv * lusteps) + iu;
faces[index][1] = (iv * lusteps) + (iu + 1);
faces[index][2] = (iv + 1) * lusteps + (iu + 1);
faces[index][3] = (iv + 1) * lusteps + iu;
index++;
} // for iu
} // for iv
this.setVertices(vertices).setFaces(faces).setUVW(uvws)
.setDuplicate(true);
return super.createBase();
}